﻿#------------------------------------
# Adding New Ones
#------------------------------------
Add the esd file within the chosen map dcx first using Yabber.
Then create the python version and recompile it.

#------------------------------------
# Condition Reference
#------------------------------------
-- GetDistanceToPlayer()

-- HasTalkEnded()

-- CheckSelfDeath()

-- IsPlayerTalkingToMe()

-- IsAttackedBySomeone()

-- GetSelfHP()

-- GetRelativeAngleBetweenPlayerAndSelf()

-- IsPlayerAttacking()

-- GetShopCondition()

-- GetOneLineHelpStatus() # Check if client player

-- IsClientPlayer() # Check if client player

-- IsGenericDialogOpen()

-- GetGenericDialogButtonResult() 

-- GetTalkListEntryResult() # Get talk option result

-- IsCharacterDisabled()

-- IsPlayerDead()

-- IsTalkingToSomeoneElse()

-- HasDisableTalkPeriodElapsed()

-- GetPlayerYDistance()

-- HasPlayerBeenAttacked()

-- GetPlayerChrType()

-- WasWarpMenuDestinationSelected()

-- IsMultiplayerInProgress()

-- GetValueFromNumberSelectDialog()

-- GetCurrentStateElapsedFrames()

-- GetCurrentStateElapsedTime()

-- GetWorkValue( <unk> ) # Covenant level?

-- GetEventStatus( <flag> ) # Check event flag

-- GetItemHeldNumLimit( <item type>, <item ID>, <value> )
-- IsEquipmentIDEquipped( <item type>, <item ID> ) # Check if item is equipped
-- IsEquipmentIDObtained( <item type>, <item ID> ) # Check if item is obtained
    0:Weapon
    1:Protector
    2:Accessory
    3:Goods
    
-- ComparePlayerInventoryNumber( <item type>, <item ID, <compare type>, <value>, <count storage?> )
    0: ==
    1: !=
    2: >
    3: <
    4: >=
    5: <=
    
-- IsMenuOpen( <menu ID> )
-- DidYouDoSomethingInTheMenu( <menu ID> )
    11: Talk Menu
    12: Repair Menu
    13: Reinforcement Menu
    23: Level Up Menu
    25: Attunement Menu
    26: Storage Menu
    30: Character Edit Menu
    31: Covenant Material Menu
    36: Warp Menu
    63: Bonfire Menu
    
-- CompareBonfireState( <state> )
    0:
    1:
    
-- CompareBonfireLevel( <unk>, <unk> )
    0:
    2:
    5:
    
-- ComparePlayerStatus( <stat>, <compare type>, <value> )
    0: ==
    1: !=
    2: >
    3: <
    4: >=
    5: <=
    
-- GetPlayerStatus( <stat> )
-- GetStatus( <stat> )
    0: Vitality
    1: Attunement
    2: Endurance
    3: Strength
    4: Dexterity
    5: Intelligence
    6: Faith
    7: Luck
    8: Souls Collected
    9: Total Get Soul
    10: Humanity
    11: Covenant Type
    12: Gender
    13: 
    14: 
    
    15: Equipped Covenant Points
    16: Equipped Covenant Points - Covenant Level 
    17: Blade Of Darkmoon Points
    18: Warrior of Sunlight Points
    19: Mound-makers Points
    20: Spears of the Church Points
    21: Rosaria's Fingers Points
    22: Watchdogs of Farron Points
    23: Aldrich Faithful Points
    24: Blade Of Darkmoon Points - Covenant Level
    25: Warrior of Sunlight Points - Covenant Level
    26: Mound-makers Points - Covenant Level
    27: Spears of the Church Points - Covenant Level
    28: Rosaria's Fingers Points - Covenant Level
    29: Watchdogs of Farron Points - Covenant Level
    30: Aldrich Faithful Points - Covenant Level
    
    31: Hollowing
    32: Hollowing Level - Covenant Level
    33: Soul Level
    34: Free Yoel Level Ups Remaining
    
    35: Way of Blue Points
    36: Way of Blue Points - Covenant Level
    37: Blue Sentinels Points
    38: Blue Sentinels Points - Covenant Level
    
    39:
    40:
    41:
    42:
    43:
   
-- GetEstusAllocation (c109)
    0: HP Estus
    1: FP Estus

-- ComparePlayerAcquittalPrice( <price>, <unk>, <unk> )
    
-- CompareRNGValue( <unk>, <unk> )
    
-- CheckActionButtonArea( <action ID> )

-- CheckSpecificPersonTalkHasEnded( <unk> )

-- CheckSpecificPersonGenericDialogIsOpen( <unk> )

-- CheckSpecificPersonMenuIsOpen( <unk>, <unk> )

-- DoesSelfHaveSpEffect( <SpEffect> )
    
-- DoesPlayerHaveSpEffect( <SpEffect> ) 

-- GetEventFlagValue( <flag>, <value> )

-- GetLevelUpSoulCost( <previous level>, <level> )

-- GetWhetherEnemiesAreNearby()

-- GetRelativeAngleBetweenSelfAndPlayer()

-- IsTalkInProgress()

-- GetDistanceFromEnemy()

-- GetTalkInterruptReason()

-- IsFightingAlone()

-- IsCampMenuOpen()

-- IsMoviePlaying()

-- IsPlayerMovingACertainDistance()

-- CanIGoToNextTalkBlock()

-- CompareParentBonfire()

-- BonfireRegistration0()

-- BonfireRegistration1()

-- BonfireRegistration2()

-- BonfireRegistration3()

-- BonfireRegistration4()

-- RelativeAngleBetweenTwoPlayers_SpecifyAxis()

-- IsPlayerCurrentWeaponDamaged()

-- IsTalkExclusiveMenuOpen()

-- IsRankingMenuOpen()

-- GetPlayerRemainingHP()

-- GetWhetherChrTurnAnimHasEnded()

-- GetWhetherChrEventAnimHasEnded()

-- f109(<type>) # Get Estus Flask Count
    0:Full
    1:Drained
    
-- f110() # Get Undead Bone Shard count

-- f111() # Used during Bonfire check

-- f112() # Used during Bonfire check negatively

#------------------------------------
# Effect Reference
#------------------------------------
* are optional parameters.

-- TalkToPlayer( <talk id>, <unk>, <unk>, *<flag> )

-- InvokeEvent()

-- StopAttacking()

-- Attack() 

-- RemoveMyAggro()

-- DisplayOneLineHelp( <text id> ) # Action prompt

-- TurnToFacePlayer()

-- ForceEndTalk( <unk> )

-- ClearTalkProgressData()

-- ShowShopMessage( <type>, *<unk>, *<unk>)
    0:Talk Options (old)
    1:Talk Options

-- CloseShopMessage()

-- SetEventState( <event flag>, <bool> )

-- OpenCampMenu()

-- CloseCampMenu()

-- ChangeTeamType( <type> )

-- SetDefaultTeamType( <type> )

-- OpenGenericDialog( <type>, <text>, <dialog result>, <box style>, <unk> )
<type>
    1: Full Screen Dim - Center Box
    2: Full Screen Dim - Center Box
    7: Lower Screen Box
    8: Lower Screen Box

<dialog result>
    0: Cancel
    1: Left
    2: Right
    3: Leave

<box style>
    0: Ornate, no options
    1: Dialog, options
    2: Ornate, options
    3: Orante, YES option

<unk>
    0:
    
-- ForceCloseGenericDialog()

-- AddTalkListData( <slot>, <text id>, <unk> )

-- AddTalkListDataIf( <condition>, <slot>, <text id>, <unk> )

-- ClearTalkListData()

-- RequestMoviePlayback( <id> )

-- OpenRegularShop( <start id>, <end id> )

-- OpenRepairShop()

-- OpenEnhanceShop( <type> ) # Reinforcement Menu
<type>
    0: Normal
    10: Unknown

-- OpenHumanityMenu()

-- OpenMagicShop() # Old special shop?

-- OpenMiracleShop() # Old special shop?

-- OpenMagicEquip( <start id>, <end id> ) # Attunement Menu
1000 is used for both in DS3

-- OpenMiracleEquip( <start id>, <end id> ) # Attunement Menu
1000 is used for both in DS3

-- OpenRepository()

-- OpenSoul() # Level Up Menu

-- CloseMenu() # Close current menu

-- SetEventFlagRange( <unk>, <unk> )
 
-- OpenDepository() # Old?

-- ClearTalkActionState()

-- ClearTalkDisabledState()

-- SetTalkDisableStateMaxDuration()

-- SetUpdateDistance( <distance> )

-- ClearPlayerDamageInfo()

-- OfferHumanity()

-- StartWarpMenuInit( <bonfire warp id> )

-- StartBonfireAnimLoop()

-- EndBonfireKindleAnimLoop()

-- OpenSellShop( <id>, <id> )

-- ChangePlayerStats( <stat>, <change type>, <value>)
<change type>
    0: Addition
    1: Subtraction
    5: Set
    
<stat>
    0: Vitality
    1: Attunement
    2: Endurance
    3: Strength
    4: Dexterity
    5: Magic
    6: Faith
    7: Luck
    8: Soul
    9: Total Get Soul
    10: Humanity
    11: Covenant Type
    12: Gender
    13: Unk1
    14: Unk2
    15: Equipped Covenant Points
    16: Equipped Covenant Points - Covenant Level 
    17: Blade Of Darkmoon Points
    18: Warrior of Sunlight Points
    19: Mound-makers Points
    20: Spears of the Church Points
    21: Rosaria's Fingers Points
    22: Watchdogs of Farron Points
    23: Aldrich Faithful Points
    24: Blade Of Darkmoon Points - Covenant Level
    25: Warrior of Sunlight Points - Covenant Level
    26: Mound-makers Points - Covenant Level
    27: Spears of the Church Points - Covenant Level
    28: Rosaria's Fingers Points - Covenant Level
    29: Watchdogs of Farron Points - Covenant Level
    30: Aldrich Faithful Points - Covenant Level
    31: Hollowing Level (Yoel)
    32: Previous Soul Level
    33: Soul Level
    34: Free Yoel Level Ups Remaining
    35: Way of Blue Points
    36: Way of Blue Points - Covenant Level
    37: Blue Sentinels Points
    38: Blue Sentinels Points - Covenant Level
    
-- OpenEquipmentChangeOfPurposeShop()

-- CombineMenuFlagAndEventFlag( <flag>, <flag> )

-- RequestSave( <unk> )

-- ChangeMotionOffsetID( <unk> )

-- PlayerEquipmentQuantityChange( <type>, <item id>, <value> )
<type>
    0:Weapon
    1:Protector
    2:Accessory
    3:Goods
    
-- RequestUnlockTrophy( <id> )

-- EnterBonfireEventRange()

-- SetAquittalCostMessageTag( <cost>, <unk> )

-- SubtractAcquittalCostFromPlayerSouls( <cost>, <unk> )

-- ShuffleRNGSeed( <unk> )

-- SetRNGSeed()

-- ReplaceTool( <item id>, <item id>, <value> )

-- BreakCovenantPledge()

-- PlayerRespawn()

-- GiveSpEffectToPlayer( <SpEffect> )

-- ShowGrandioseTextPresentation( <unk> )

-- AddIzalithRankingPoints()

-- OpenItemAcquisitionMenu( <type>, <item id>, <value> )
<type>
    0:Weapon
    1:Protector
    2:Accessory
    3:Goods
    
-- AcquireGesture( <gesture id> )

-- ForceCloseMenu()

-- SetTalkTime( <time> )

-- CollectJustPyromancyFlame()

-- OpenArenaRanking()

-- ReportConversationEndToHavokBehavior()

-- OpenConversationChoicesMenu( <unk> )

-- StopEventAnimWithoutForcingConversationEnd( <unk> 

-- OpenCharaMakeMenu() # Character Edit Menu

-- OpenChooseQuantityDialog( <item id>, <value> )

-- ClearQuantityValueOfChooseQuantityDialog()

-- SetWorkValue( <unk>, <value> )

-- UpdatePlayerRespawnPoint()

-- SetMessageTagValue( <unk>, <value>, *<value> )

-- TurnCharacterToFaceEntity( <unk>, <player>, <unk> )

-- GetItemFromItemLot( <itemlot id> )

-- OpenEstusAllotMenu()

-- AddRankingPoints( <type>, <value> )
<type>
    5:

-- OpenHollowLevelUpMenu()
        
-- c1108( <value>, <type> ) # Set Estus Flask Count
    0:Full
    1:Drained
        
-- c1109( <value> ) # Set Estus Flask Strength
        
-- c1110() # Show Talk Options
        
-- c1111( <start shop id>, <end shop id> ) # Transposition Menu

-- c1112( <talk id> ) # Fire Keeper during the End of Fire ending 

-- c1113() # Rebirth Menu

-- c1114() # Undead Match Menu

#------------------------------------
# Misc Reference
#------------------------------------
108:EstusAllocationUpdate
109:BonfireActivation
110:FirelinkBonfireMenuFlag
111:SoulsTransposition
112:SetBonfireMenuData
113:ReallocateAttributes
114:UndeadMatch

c1108( f109(0) + 1, 0 ) # Likely "Increase Estus Flask Count"
f109(0) # Likely "Get Estus Flask Count"
SetAquittalCostMessageTag(z7, z8)
ComparePlayerAcquittalPrice(z7, z8, 2) == 1
SubtractAcquittalCostFromPlayerSouls(z7, z8)

#------------------------------------
# Talk IDs
#------------------------------------
300000 High Wall of Lothric bonfire
300001 Consumed King's Gardens bonfire
300002 High Wall Jail bonfire
300003 Soldier's Nook bonfire
300004 Knight's Rest bonfire
300005 Unused
300008 Unused
300009 Unused
300020 Path of the Dragon gesture pickup
300220 Greirat
300324 Oceiros
300330 Emma
300500 GENERIC UNUSED
300501 GENERIC UNUSED
300502 GENERIC UNUSED
300503 GENERIC UNUSED
300504 GENERIC UNUSED
300505 GENERIC UNUSED
300506 GENERIC UNUSED
300507 GENERIC UNUSED
300508 GENERIC UNUSED
300509 GENERIC UNUSED
300705 Unused
300706 Unused
300720 Unused

301000 Lothric Castle bonfire
301001 Dragonslayer Armour bonfire
301002 Dragon Barracks bonfire
301020 Sunlight Altar
301500 GENERIC UNUSED
301501 GENERIC UNUSED
301502 GENERIC UNUSED
301503 GENERIC UNUSED
301504 GENERIC UNUSED
301505 GENERIC UNUSED
301506 GENERIC UNUSED
301507 GENERIC UNUSED
301508 GENERIC UNUSED
301509 GENERIC UNUSED

310000 Giant's Tower bonfire
310001 Pit of Hollows bonfire
310002 Cliff Underside bonfire
310003 Dilapidated Bridge bonfire
310004 Foot of the High Wall bonfire
310020 Mound-makers
310021 Velka's Statue
310150 Yoel of Londor
310180 Sirris of the Sunless Realm
310240 Cornyx of the Great Swamp
310260 Irina of Carim
310270 Eygon of Carim
310310 Siegward of Catarina (lift)
310311 Siegward of Catarina (ledge)
310380 Talking Cage Hollow
310410 Holy Knight Hodrick
310500 GENERIC UNUSED
310501 GENERIC UNUSED
310502 GENERIC UNUSED
310503 GENERIC UNUSED
310504 GENERIC UNUSED
310505 GENERIC UNUSED
310506 GENERIC UNUSED
310507 GENERIC UNUSED
310508 GENERIC UNUSED
310509 GENERIC UNUSED
310610 Tower Giant

320000 Archdragon Peak bonfire
320001 Nameless King bonfire
320002 Great Belfry bonfire
320003 Dragon-kin Mausoleum bonfire
320010 Dragon Altar
320500 GENERIC UNUSED
320501 GENERIC UNUSED
320502 GENERIC UNUSED
320503 GENERIC UNUSED
320504 GENERIC UNUSED
320505 GENERIC UNUSED
320506 GENERIC UNUSED
320507 GENERIC UNUSED
320508 GENERIC UNUSED
320509 GENERIC UNUSED

330000 Halfway Fortress bonfire
330001 Abyss Watchers bonfire
330002 Crystal Sage bonfire
330003 Farron Keep bonfire
330004 Keep Ruins bonfire
330005 Old Wolf bonfire
330006 Road of Sacrifices bonfire
330007 Sage's Overlook bonfire
330008 Farron Keep Perimeter bonfire
330020 Old Wolf of Farron
330170 Hawkwood the Deserter
330230 Orbeck of Vinheim
330290 Anri of Astora (male)
330291 Unused
330295 Anri of Astora (female)
330360 Horace the Hushed
330500 GENERIC UNUSED
330501 GENERIC UNUSED
330502 GENERIC UNUSED
330503 GENERIC UNUSED
330504 GENERIC UNUSED
330505 GENERIC UNUSED
330506 GENERIC UNUSED
330507 GENERIC UNUSED
330508 GENERIC UNUSED
330509 GENERIC UNUSED

341000 Royal Library bonfire
341001 Grand Archives Rooftop bonfire
341320 Lothric
341500 GENERIC UNUSED
341501 GENERIC UNUSED
341502 GENERIC UNUSED
341503 GENERIC UNUSED
341504 GENERIC UNUSED
341505 GENERIC UNUSED
341506 GENERIC UNUSED
341507 GENERIC UNUSED
341508 GENERIC UNUSED
341509 GENERIC UNUSED

350000 Cleansing Chapel bonfire
350001 Rosaria's Bed Chamber bonfire
350002 Deacons of the Deep bonfire
350003 Cathedral of the Deep bonfire
350020 Rosaria
350190 Ringfinger Leonhard
350191 Unused
350300 Unbreakable Patches (Door side)
350301 Unbreakable Patches (Rosaria side)
350302 Unbreakable Patches (Door side)
350310 Longfinger Kirk
350500 GENERIC UNUSED
350501 GENERIC UNUSED
350502 GENERIC UNUSED
350503 GENERIC UNUSED
350504 GENERIC UNUSED
350505 GENERIC UNUSED
350506 GENERIC UNUSED
350507 GENERIC UNUSED
350508 GENERIC UNUSED
350509 GENERIC UNUSED
350510 Slave Knight Gael
350793 Unused
350903 Unused
350906 Unused

370000 Church of Yorshka bonfire
370001 Irithyll Cathedral bonfire
370002 Chamber of the Princess bonfire
370003 Anor Londo bonfire
370004 Central Irithyll bonfire
370005 Distant Manor bonfire
370006 Water Reserve bonfire
370007 Irithyll of the Boreal Valley bonfire
370008 Prison Tower bonfire
370020 Archdeacon McDonnell
370160 Company Captain Yorshka
370180 Sirris of the Sunless Realm
370190 Ringfinger Leonhard
370290 Anri of Astora (male)
370291 Anri of Astora (male) - Aldrich room
370292 Unused
370295 Anri of Astora (female)
370296 Anri of Astora (female) - Aldrich room
370310 Siegward of Catarina
370400 Londor Assassin (Church of Yorshka)
370401 Londor Assassin (Darkmoon Tomb)
370500 Domhnall of Zena
370501 GENERIC UNUSED
370502 GENERIC UNUSED
370503 GENERIC UNUSED
370504 GENERIC UNUSED
370505 GENERIC UNUSED
370506 GENERIC UNUSED
370507 GENERIC UNUSED
370508 GENERIC UNUSED
370509 GENERIC UNUSED

380000 High Lord Wolnir bonfire
380001
380002
380003
380004
380005
380006
380290
380291
380295
380296
380500 GENERIC UNUSED
380501 GENERIC UNUSED
380502 GENERIC UNUSED
380503 GENERIC UNUSED
380504 GENERIC UNUSED
380505 GENERIC UNUSED
380506 GENERIC UNUSED
380507 GENERIC UNUSED
380508 GENERIC UNUSED
380509 GENERIC UNUSED

390000
390001
390002
390250
390310
390311
390500 GENERIC UNUSED
390501 GENERIC UNUSED
390502 GENERIC UNUSED
390503 GENERIC UNUSED
390504 GENERIC UNUSED
390505 GENERIC UNUSED
390506 GENERIC UNUSED
390507 GENERIC UNUSED
390508 GENERIC UNUSED
390509 GENERIC UNUSED

400000
400001
400002
400003
400004
400005 New Journey Giant
400006 Altar of Afflition
400010
400120 Firekeeper
400130 Ludleth #1
400131 Ludleth #2 (ashes)
400140 Yuria of Londor
400150 Yoel of Londor
400170 Hawkwood the Deserter
400171 Hawkwood the Deserter
400172 Hawkwood the Deserter
400180 Siris of the Sunless Realms
400190 Ringfinger Leonhard
400200 Andre
400210 Shrine Handmaid
400211 Shrine Handmaid (Untended Graves)
400220 Greirat of the Undead Settlement
400230 Orbeck of Vinheim
400240 Cornyx of the Great Swamp
400250 Karla
400260 Irina of Carim #1
400261 Irina of Carim #2
400262 Irina of Carim #3
400270 Eygon of Carim #1
400271 Eygon of Carim #2
400290 Anri of Astora #1
400295 Anri of Astora #2
400300 Patches #1
400301 Patches #2
400360 Horace the Hushed
400390 Crows
400500 Nestling
400501 Skeleton Banter
400502 GENERIC UNUSED
400503 GENERIC UNUSED
400504 GENERIC UNUSED
400505 GENERIC UNUSED
400506 GENERIC UNUSED
400507 GENERIC UNUSED
400508 GENERIC UNUSED
400509 Menu Test
400790
400791
400792
400900
400901
400902
400903
400904
400905
400907
400908
400909 

410000
410001 Kiln of the First Flame bonfire
410002 Soul of Cinder bonfire
410010 Flameless Shrine bonfire
410120 Fire Keeper
410500 GENERIC UNUSED
410501 GENERIC UNUSED
410502 GENERIC UNUSED
410503 GENERIC UNUSED
410504 GENERIC UNUSED
410505 GENERIC UNUSED
410506 GENERIC UNUSED
410507 GENERIC UNUSED
410508 GENERIC UNUSED
410509 GENERIC UNUSED
410990 Found in SOC arena

450000
450001
450002
450003
450004
450005
450006
450007
450500 GENERIC UNUSED
450501 GENERIC UNUSED
450502 GENERIC UNUSED
450503 GENERIC UNUSED
450504 GENERIC UNUSED
450505 GENERIC UNUSED
450506 GENERIC UNUSED
450507 GENERIC UNUSED
450508 GENERIC UNUSED
450509 GENERIC UNUSED
450520
450521
450530
450531
450540
450541
450550
450551
450560
450561
450590

500000
500001
500002
500003
500004
500500 GENERIC UNUSED
500501 GENERIC UNUSED
500502 GENERIC UNUSED
500503 GENERIC UNUSED
500504 GENERIC UNUSED
500505 GENERIC UNUSED
500506 GENERIC UNUSED
500507 GENERIC UNUSED
500508 GENERIC UNUSED
500509 GENERIC UNUSED
500730
500731
500732
500760

510000
510001
510002
510003
510004
510005
510020 Church Monument
510021 Purging Monument
510500 GENERIC UNUSED
510501 GENERIC UNUSED
510502 GENERIC UNUSED
510503 GENERIC UNUSED
510504 GENERIC UNUSED
510505 GENERIC UNUSED
510506 GENERIC UNUSED
510507 GENERIC UNUSED
510508 GENERIC UNUSED
510509 GENERIC UNUSED
510730
510731
510732
510740
510750
510751
510752
510770
510780

511000
511001
511500 GENERIC UNUSED
511501 GENERIC UNUSED
511502 GENERIC UNUSED
511503 GENERIC UNUSED
511504 GENERIC UNUSED
511505 GENERIC UNUSED
511506 GENERIC UNUSED
511507 GENERIC UNUSED
511508 GENERIC UNUSED
511509 GENERIC UNUSED
511740
511770
